package cn.good.yan.sf.t6;

/**
 * 6 双端队列 - 接口  ，自定义队列接口  （两端都可以进出）
 *
 * @author shengren.yan
 * @create 2024-08-03
 */
public interface DQueue<E> {

    // 向头部添加
    boolean offerFirst(E e);

    // 向尾部添加
    boolean offerLast(E e);

    // 从头部移除元素
    E poolFirst();

    // 从尾部移除元素
    E poolLast();

    // 从头部获取值，并不移除
    E peekFirst();

    // 从尾部获取值，并不移除
    E peekLast();

    // 检查队列是否为空，true就是空
    boolean isEmpty();

    // 检查队列是否满了，true就是满了
    boolean isFull();

}
